import { Ora } from "ora";
import { Options } from "./options";

export type App = Options & {
    init: () => Promise<void>;
    use: (fn: ReturnType<PluginFunction>) => Promise<void>;
    clear: () => void;
    spinner: Ora;
};

export type PluginFunction = () => (app: App) => Promise<void> | void;
